package test_ptr

import "fmt"

func DoPtrToPtr() {
	fmt.Println("二级指针")
	var a int
	var ptr *int
	var pptr **int

	a = 30

	ptr = &a
	pptr = &ptr

	fmt.Println(a)
	fmt.Println(*ptr, ptr)
	fmt.Println(**pptr, *pptr, pptr)

}

func DoPtrFunc() {
	fmt.Println("指针传参")
	a := 100
	b := 200

	fmt.Println(a)
	fmt.Println(b)

	swap(&a, &b)

	fmt.Println(a)
	fmt.Println(b)
}

func swap(x *int, y *int) {
	*x, *y = *y, *x
}
